<
programming, tool> A program that converts another program
from some
source language (or
programming language) to
machine language (object code). Some compilers output
assembly language which is then converted to {machine
language} by a separate
assembler.
A
compiler is distinguished from an assembler by the fact that
each input statement does not, in general, correspond to a
single machine instruction or fixed sequence of instructions.
A
compiler may support such features as automatic allocation
of variables, arbitrary arithmetic expressions, control
structures such as FOR and WHILE loops, variable
scope,
input/ouput operations,
higher-order functions and
portability of source code.
AUTOCODER, written in 1952, was possibly the first primitive
compiler.
Laning and Zierler's
compiler, written in
1953-1954, was possibly the first true working algebraic
compiler.
See also
byte-code compiler,
native compiler, {optimising
compiler}.
(1994-11-07)